
#include "BSP_CD4052.h"

STATUS Mux_Init(void)
{
    GPIO_InitTypeDef GPIO_InitStructure;

    RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOB, ENABLE);

    GPIO_InitStructure.GPIO_Pin = GPIO_Pin_5;
    GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;
    GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP;
    GPIO_Init(GPIOB, &GPIO_InitStructure);

    GPIO_InitStructure.GPIO_Pin = GPIO_Pin_6;
    GPIO_Init(GPIOB, &GPIO_InitStructure);
    return ok;
}
void Mux_Channel_Set(uint8_t ch)
{
    switch(ch)
    {
        case 0:
        GPIO_WriteBit(GPIOB, GPIO_Pin_6, Bit_RESET);
        GPIO_WriteBit(GPIOB, GPIO_Pin_5, Bit_RESET);
        break;
        case 1:
        GPIO_WriteBit(GPIOB, GPIO_Pin_6, Bit_SET);
        GPIO_WriteBit(GPIOB, GPIO_Pin_5, Bit_RESET);
        break;
        case 2:
        GPIO_WriteBit(GPIOB, GPIO_Pin_6, Bit_RESET);
        GPIO_WriteBit(GPIOB, GPIO_Pin_5, Bit_SET);
        break;
        case 3:
        GPIO_WriteBit(GPIOB, GPIO_Pin_6, Bit_SET);
        GPIO_WriteBit(GPIOB, GPIO_Pin_5, Bit_SET);
        break;
        default: break;
    }
}

